package com.jtp7.demo.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.jtp7.demo.entity.TruckInfo;
import com.jtp7.demo.entity.response.PageListResult;
import com.jtp7.demo.entity.vo.AddTruckInfoDTO;
import com.jtp7.demo.entity.dto.TruckInfoDTO;

import java.util.List;
import java.util.Map;
import java.util.function.Function;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author author
 * @since 2021-07-27
 */
public interface ITruckInfoService extends IService<TruckInfo> {


    /**
     * addRedis缓存
     * @param truckInfoDTOList
     */
     void cacheRedis(List<TruckInfo> truckInfoDTOList);

    /**
     * 添加条件
     */
    Map<Object,Object> addCondition(List<AddTruckInfoDTO> addTruckInfoDTOList);

    /**
     * 修改用户信息
     *
     * @param truckInfo
     * @return
     */
    TruckInfoDTO update(TruckInfoDTO truckInfo);

    /**
     * 按司机姓名进行分页模糊查询
     *
     * @param name
     * @param currentPage
     * @param size
     * @return
     */
    PageListResult<Object> findByName(String name, String phone, String drivingCode, Integer currentPage, Integer size);

    /**
     * 查询司机状态为在岗的信息
     *
     * @param version
     * @return
     */
    List<TruckInfo> findByVersion(int version);

}
